perm filename PAPERA.5[DOC,TOB] blob
sn#025996 filedate 1973-02-19 generic text, type T, neo UTF8
00100 COMPUTER PERCEPTION OF VISUAL SCENES
00105 by
00110 Thomas O. Binford, Stanford University and
00115 Jay M. Tenenbaum, Stanford Research Institute
00120
00200
00202 Introduction.
00205 Computer perception is studied for its obvious practical applications
00210 and for the insights it provides into complex system organization and the
00215 nature of human and artificial intelligence.
00225 In constructing machines that see, we seek answers to a broad range of
00230 questions: How should the system be partitioned functionally?
00500 What control structure is needed?
00600 What are inherent computational limits, in
00700 interconnections for parallel machines; in computation time for
00800 serial machines?
00805 Many of the problems encountered are widespread in intelligence:
01000 How is knowledge represented? How is it
01100 integrated in the system? How does it guide in drawing conclusions
01200 from image data? How does knowledge interact with conclusions drawn
01300 from the image? Given a system, what can it see? What is necessary
01400 for visual learning? What are given systems capable of learning? Many
01500 results cannot be taken literally as models for biological systems
01600 because of differences in hardware and gaps in our knowledge, but
01700 fundamental limitations are shared, and many examples are applicable.
01800 The research may occasionally borrow from biology, but we cannot copy
01900 nature, since the details are not known and the hardware is
02000 different.
02100
02200 Issues that arise in mechanizing perception also arise in many
02205 other areas of artificial intelligence and computer science.
02300 Visualization is an important part of problem-solving and
02400 mathematics. Graphs and visual displays are an vital to
02500 communication. Representation of knowledge and its use in
02600 goal-directed ways are universal problems in intelligence. For example,
02700 representations of shape are important in augmenting productivity and
02800 man-machine communication.
02805
02810 The use of computer graphics and design
02900 automation is already common in industry. The information already
02905 available from these design processes can be used by computers to
03000 aid in controlling parts and
03100 material flow, in designing transport systems, in extending modularity and
03200 commonality of parts and procedures,and in
03300 sensing and scheduling production.
03400 These abilities which require some of the most sophisticated A.I. techniques
03500 will have a profound effect on near term productivity.
03900
04000 Industry uses hundreds of industrial robots, some computer
04100 controlled. Touch and simple vision can incrementally improve these
04200 robots which now have no sensing and thus no contingency actions.
04205 Sensor equipped robots coupled to mini-computers will be able to
04210 sense color and strong brightness contrasts, recognize known objects from
04215 two dimensional outlines (e.g., the top view of a flat object) or
04220 three dimensionally, by determining depth. With these skills, they will
04225 be able to align mating parts in assembly operations, increase reliability
04230 by self-calibration, detect flaws and disasters, and permit large tolerances
04235 in parts transfer, even permitting parts to be taken from a bin.
04900
05000
05300 We are interested in visual systems for function of an organism such
05400 as a robot that must manipulate or avoid objects rather than just classifying
05500 them. Manipulation requires three-dimensional interpretations and spatial
05600 relations of objects. Certain techniques have evolved for simpler
05700 problems; e.g. template matching or vector space classification for
05800 character recognition. It seems attractive to simply save images or
05900 feature vectors, then match against a scene or part of a scene. But
06000 objects occlude one another, parts have joints which move separately,
06100 there are many viewpoints, many possible objects, and many combinations
06200 of objects. Object classes are often defined by function, not shape (eg. coffee cups).
06300 Complex deductions are necessary to obtain spatial relations from an image.
06305 Finally, we must frequently deal with new
06400 objects. Direct template matching techniques are impractical for these requirements,
06500 except in very carefully controlled applications.
00100 ELEMENTS OF A VISUAL SYSTEM
00200
00300 The computer eye is some form of tv camera with color filters and a
00400 turret or zoom lens for closeup views. The computer controls filters,
00500 lens and other parameters to optimize the image for each task [Tenenbaum].
00600 Sensor systems have inadequate dynamic range but system design studies
00700 suggest better compromises [Binford]. Humans use depth information
00800 obtained from stereo and motion parallax. Several depth sensors
00900 based on triangulation have been built [Agin, Shirai, Munson].
01000 Range information with color should greatly simplify interpretation of
01100 scenes.
01200
01300 The image is read into memory as an array of brightness values
01400 (typically 300x300) with 4-8 bits for each sample for each color.
01500 The process of interpreting this mass of numbers into a symbolic
01600 description can be thought of as subdivided into segmentation,
01700 representation, and interpretation.
01800
01900 The process of segmentation of a scene partitions it into meaningful entities
02000 which may be recognizable. Segmentation in character recognition
02100 is simple since printed characters are clearly separated and
02200 labelled by black on white.
02300 It is harder to segment objects in a real scene (even simple scenes)
02400 because there are many possible properties for segmentation:
02500 uniformity of brightness, color, texture (itself a complex descriptor),
02600 regularity of boundaries, contiguity of depth (given stereo or other
02700 depth measurements). Segmentation may also depend on depth cues from
02800 interpretation of texture gradients and occlusion.
02900
03000 In what form do we represent objects internally in the computer? The
03100 simplest form is a pictorial template, an array of brightness values
03200 to be matched directly against fragments of scenes by correlation.
03300 Given the inadequacies of this representation, we must describe
03400 partitioned regions symbolically in terms of extracted features like
03500 color, size, texture, and shape. All these properties are inferred
03600 by complex processes from the image. Simple descriptors for shape or
03700 texture may be used in simple tasks and limited context. Shape might
03800 be described by the ratio of the squared perimeter to the area of
03900 a region. More sophisticated shape representations, needed for a wider
04000 range of tasks, are described later.
04100
04200 Interpretation is often expressed as computing a distance measure between an
04300 object and a stored model. For simple cases that can be useful. When
04400 objects are occluded, there must be a partial match. When objects are
04500 not identical, judgments of similarity depend on representation of
04600 shape and representation of the task, in order to define important
04700 differences. The most useful approach is to build up symbolic
04800 descriptions and make symbolic descriptions of differences. Sometimes,
04900 there are few enough models that matching with each model is possible.
05000 More generally, interpretation must make use of a large visual memory.
05100
05200 Because of the evident interconnection of these three processes, one
05300 cannot proceed sequentially through segmentation, representation and interpretation
05400 and expect to obtain a globally consistent interpretation for all objects
05500 in a scene.
00100 BLOCKS WORLD
00200
00300 Research concentrated initially on scenes of blocks as a simpler
00400 subproblem. Roberts important work opened the field []. Objects were
00500 represented as built up of primitive parts, a block, a wedge, and a
00600 hexagonal prism. Primitives were represented by their vertices in
00700 three dimensions. The program assumed it would first obtain perfect
00800 line drawings. It attempted to identify unobscured polygons, then
00900 match sets of vertices to topologically equivalent model vertices.
01000 Recognition meant finding a three-dimensional model which could be
01100 translated, rotated, and scaled, then projected to match part of the
01200 image. The recognized piece was then cut away and the remainder
01300 considered. Some segmentation was performed with the recognition.
01400
01500 That organization has proven inadequate. It is not enough to use
01600 models and template matching. Producing perfect line drawings is not
01700 practical. Some lines are missed. Shadows, reflections and surface
01800 markings cause extra lines. Errors made at one stage are compounded
01900 by later stages.
02000
02100 Guzman found heuristics to segment complex scenes into objects
02200 without template matching. The program linked regions at vertices
02300 with three lines if they were not a T, between regions without
02400 concavities (internal angle less than pi) at the vertex. See figure
02500 1a. Eventually he required almost the same condition at both ends of
02600 a line before linking (except that T was allowed at one end). See
02700 figure 1b. We have rephrased his conditions for clarity. Regions
02800 linked twice were joined into clusters; regions linked twice to a
02900 cluster were also joined. Other links were introduced without much
03000 motivation. The program did surprisingly well, but had problems with
03100 holes and other non-convexities, and with accidental alignment. It
03200 depended on being told the background. These techniques did not
03300 extend far. Falk joined lines into edges of bodies; since missing
03400 edges cause regions to be non-planar, some errors could be avoided.
03500
03600 Huffman and Clowes [] analyzed trihedral vertices seen from
03700 non-singular perspective (small change of viewpoint leaves the number
03800 of visible lines unchanged) by classifying edges as convex, concave
03900 and obscuring. It was possible to reject some drawings as impossible
04000 under these assumptions. Waltz expanded that labelling of lines to
04100 include cracks, shadows, and illumination. It would seem that such
04200 large numbers of possible interpretations would be unmanagable;
04300 instead, the increased precision of descriptions allows rapid
04400 discarding of wrong interpretations. Not only are solutions possible,
04500 they are quickly obtained. In considering possible solutions,
04600
04700
04800
04900
05000
05100 The best performance in segmenting image data is given by the
05200 Binford-Horn [] line finder and the Shirai [] line finder. The two
05300 are complementary and should be combined. The former is able to find
05400 most lines in a scene of white blocks on a white background in
05500 arbitrary lighting. It misses a few lines which are found by
05600 subsequent prediction and verification and garbles some vertices.
05700 Shirai's system performs much better. It requires large contrast
05800 with background however (white on black), and finds only features and
05900 objects for which cues are available from context.
06000
06100 It is interesting to compare these systems with the biological
06200 system. Directional edge operators are scanned over the image
06300 [Binford, Hueckel]; these compare with the Hubel-Wiesel cells in
06400 higher animals. In practice, large gradients at reflections and
06500 curved surfaces cause masses of spurious edge fragments. These were
06600 eliminated by subtracting the local average at each point, thus
06700 subtracting out smooth gradients [Binford]. This process is familiar
06800 as lateral inhibition in the retina of animals.
06900
07000 The Binford-Horn program used an optimal curve sequential decision
07100 process to extend curves and test at each extension, whether to keep,
07200 terminate, or extend further. Shirai began with white objects on a
07300 black background; context was used at each step to decide what to do
07400 next. At vertices, the extension of boundary lines was tested.
07500 Completions for unterminated lines was searched for. Additional
07600 lines were tested for at vertices, including some parallel to lines
07700 at adjacent vertices. The use of context involved not changing
07800 thresholds, but using special-purpose operators: verify a line at
07900 known position and angle; find a line through a vertex.
08000
00100 REAL WORLD VISION
00200
00300 Studies for agricultural and earth resources surveys have considered
00400 texture as a two-dimensional problem. Bajcsy [] has analyzed outdoor
00500 scenes for which perspective and three-dimensional description are
00600 important. Textures were described by structures of texture elements with spatial
00700 relations. Descriptors for texture elements and relations were
00800 obtained from the Fourier transform for directionality (if any),
00900 size, contrast, and spacing of texture elements. The Fourier transform
01000 was found troublesome,however. Color and texture regions were
01100 obtained. Some depth relations could be observed from texture
01200 gradient. An attempt was made to obtain consistent interpretations
01300 by first confirming region boundaries by independent properties,
01400 making three-dimensional interpretations, and matching region descriptors with
01500 those of sky, trees, grass, etc. in a world model.
01600
01700 quality of interpretation was limited by unreliability of region-growing process.
01800 Further work in outdoor scenes attempts to incorporate the world model and
01900 interpretation into the region growing process.
02000 An interpretation of
02100 image regions as sky, trees, etc. is evaluated by calculating
02200 probabilities for consistency of object descriptions and boundary
02300 description. Consistent interpretations which maximize the
02400 probabilistic evaluation are sought.
02500
02600 Regions are merged not only because of similarity of properties, but
02700 because
02800 the consistency of semantic interpretation
02900 is improved.
00100 Conclusion.
00200 Visual perception by computer is a challenging but rewarding goal.
00300 Recently, several laboratories have begun to apply techniques
00400 from perception research to practical industrial tasks.
00500 General Motors laboratories has succeeded in mounting a wheel on
00600 an axle. Stanford Research Institute and Hitachi Ltd. have each
00700 demonstrated systems which can distinguish sheet metal parts
00800 on a moving conveyor belt and determine their orientation to enable
00900 manipulation. Template matching techniques were used to take
01000 advantage of the two dimensional nature of these tasks. Moreover,
01100 the conveyor demonstrations relied on the contrast between shiny metalic parts
01200 and the black belt to simplify segmentation. Many industrial processes
01300 share similar constraints or can be readily redesigned to do so.
01400 We thus expect a proliferation of industrial applications of
01500 computer perception in the near future.